﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using CreateYourWorld.DataModels;

namespace CreateYourWorld.DataAccess
{
    public interface IWorldRepository
    {
        SessionModel getSession(string username, string password);

        PlayerModel getPlayer(Int64 sessionID);
        PlayerBaseModel getPlayerData(Int64 sessionID);
        bool updatePlayerPosition(Int64 sessionID, int movedX, int movedY);

        IQueryable<FieldModel> getWorldFields();
        IQueryable<CreatureModel> getFieldCreatures(Int64 fieldID);

        FieldBaseModel getFieldData(int fieldType);
        CreatureBaseModel getCreatureData(int creatureType);

        IQueryable<ItemModel> getFieldItems(Int64 fieldID);
        IQueryable<ItemModel> getCreatureItems(Int64 creatureID);
        IQueryable<ItemModel> getPlayerItems(Int64 sessionID);
        ItemBaseModel getItemData(Int32 itemType);
    }
}
